import java.util.Scanner;

public class KnowledgeControl {
    public static void main(String[] args) {

        /**
         *         已知世界上最高的山峰是珠穆朗玛峰，它的高度是 `8844.43` 米，
         *         假设有一张足够大的纸，其厚度为 `0.1` 毫米，
         *         那么请问我要折叠多少次，才能将这张纸折成珠穆朗玛峰的高度？
         */

//        设x=>珠峰  y=>纸  厚度 thickness  time =>折叠次数
//        double x = 8844.43,y=0.1,thickness=0;
//        int time =1;
////        System.out.println("折叠次数为："+(thickness == x));
//        while (thickness != x && thickness < x){
//            thickness = thickness + y*2;
//            time++;
//            System.out.println("折叠次数为："+time);
//            System.out.println("thickness========>>>》》》："+thickness);
//        }
//        System.out.println("折叠次数为："+time);


        /**
         * 1.  **题目**
             *
             * 假设给你一个整数 `x`，如果这个数是回文数，打印 `true`，否则打印 `false`。
             *
             * 回文数：指正序（从左向右）和倒序（从右向左）读都是一样的整数。
         */

//        Scanner in = new Scanner(System.in);
//
//        System.out.println("输入一个整数");
//
//        // 输入的初始值
//        int num = in.nextInt();
//        // 临时记录
//        int tmp = num;
//        // 反转后的数
//        int reverse = 0;
//
//        while (num != 0) {
//            int x = num % 10;
//            num /= 10;
//            reverse = reverse * 10 + x;
//        }
//
//        System.out.println(tmp + " 是一个回文数 ：" + (reverse == tmp));



//        给定两个整数，分别是被除数和除数，然后在不使用乘法、除法和 `%` 运算符的情况下，求出商和余数。
//        Scanner n1 = new Scanner(System.in);
//        System.out.print("请输入第一个被除数：");
//        int s1 = n1.nextInt();
//        System.out.print("请输入第二个除数：");
//        int s2 = n1.nextInt();
//
//        // 商
//        int quotient = 0;
//        // 余数
//        int remainder = 0;
//
//        while (s1 >= s2) {
//            s1 -= s2;
//            quotient++;
//            remainder = s1;
//        }
//
//        System.out.format("两数的商是: %d, 两数的余数是: %d\n", quotient, remainder);

//        if(s2>=s1){
//            while (true){
//
//            }
//        }else{
//            System.out.print("输入的数有误");
//        }


        /**
         *
         *   游戏规则：从任意一个数字开始报数，当要报的数字是包含 `7` 或 `7` 的倍数时，都要说：过。
         *   打印出 `1 - 100` 之间的满足逢七必过规则的数据。
         *
         */

//        for (int i = 1; i <= 100; i++) {
//            int ge = i % 10;
//            int shi = i / 10;
//
//            if (i % 7 == 0 || i % 10 == 7 || i / 10 == 7) {
//                System.out.println("过");
//            } else {
//                System.out.println(i);
//            }
//        }

        /**
         *  输入一个大于等于 `2` 的整数，计算并返回这个数的平方根，结果只保留整数部分。
         *
         */

        Scanner in = new Scanner(System.in);

        System.out.println("请输入一个整数：");
        int num = in.nextInt();
        for (int i = 1; i <= num; i++) {
            if (num == i * i) {
                System.out.println(num + " 的平方根是: " + i);
                break;
            } else if (num < i * i) {
                System.out.println(num + " 的平方根是: " + (i - 1));
                break;
            }
        }



    }
}
